home *** CD-ROM | disk | FTP | other *** search
/ CD Ware Multimedia 1994 November / Cd Ware (Nro. 2) - Epimundo.iso / DOS / CM / PCBLOTTO.ZIP / PCBLOTTO.PPE (.txt) < prev    next >
Encoding:
PCBoard Programming Language Executable  |  1994-06-08  |  8.3 KB  |  373 lines

  1. ;------------------------------------------------------------------------------
  2. ;                                                   .ss.
  3. ;                                                   `²²'
  4. ;             .,sS$Ss,,s$  .,sS$$$Ss.  .,sS$Ss,,s$ .ss.  .sSs.
  5. ;           .d$$²^°²$$$$'.d$P²°^^²$P'.d$$²^°²$$$$'.$$$' .$$$²Sb,.
  6. ;           $$$'   .$$$' $$$²Sçsµ²' .$$$'   .$$$'.$$$' .$$$'  `$$b.
  7. ;           $$$b,,d$$$' ,$$$b,....,s$$$$b,,d$$$'.$$$;.,$$$'    ;$$$
  8. ;           `²S$$S²²S$$S²°²S$$$$S²°°²S$$$$$$',$$S²°²S$S'.sS$$$P²'
  9. ;                                    .sS²°$$$²²°"'       d²°'
  10. ;                                  .$$²  .$$'
  11. ;                                  $$$.,d$$'
  12. ;                                  `²S$$S²'
  13. ;------------------------------------------------------------------------------
  14. ; P.P.L.X. 2.OO                          (C)1996 - Lone Runner / AEGiS CoRP'96 
  15. ;------------------------------------------------------------------------------
  16. ; PPE 2.OO (plain) - Analysis ON - Postprocessing ON
  17. ;------------------------------------------------------------------------------
  18.  
  19.     Boolean  BOOLEAN001
  20.     Boolean  BOOLEAN002
  21.     Integer  TINTEGER001(5)
  22.     Integer  TINTEGER002(5)
  23.     Integer  TINTEGER003(2)
  24.     Integer  TINTEGER004(2)
  25.     Integer  INTEGER005
  26.     Integer  INTEGER006
  27.     Integer  INTEGER007
  28.     Integer  INTEGER008
  29.     String   TSTRING001(5)
  30.     String   TSTRING002(2)
  31.     String   STRING003
  32.     String   STRING004
  33.     String   STRING005
  34.  
  35. ;------------------------------------------------------------------------------
  36.  
  37.     STRING003 = "@X0C"
  38.     STRING004 = "@X0E"
  39.     BOOLEAN001 = 1
  40.     BOOLEAN002 = 0
  41.     Gosub LABEL004
  42.     AnsiPos INTEGER007, INTEGER008
  43.     While (BOOLEAN001) Do
  44.         AnsiPos INTEGER007, INTEGER008
  45.         Print STRING004 + "Enter the game you want to play ( 1/2 ) Q to quit "
  46.         STRING005 = Inkey()
  47.         If ((((STRING005 <> "Q") || (STRING005 <> "q")) || (STRING005 <> "1")) || (STRING005 <> "2")) Then
  48.             BOOLEAN002 = 1
  49.             :LABEL001
  50.             If (BOOLEAN002) Goto LABEL003
  51.             AnsiPos INTEGER007, INTEGER008
  52.             Print STRING004 + "Enter the game you want to play ( 1/2 ) Q to quit "
  53.             If ((((STRING005 <> "Q") || (STRING005 <> "q")) || (STRING005 <> "1")) || (STRING005 <> "2")) Then
  54.                 BOOLEAN002 = 1
  55.                 Goto LABEL002
  56.             Endif
  57.             BOOLEAN002 = 0
  58.             :LABEL002
  59.             Goto LABEL001
  60.         Endif
  61.         :LABEL003
  62.         If ((STRING005 == "Q") || (STRING005 == "q")) Then
  63.             BOOLEAN001 = 0
  64.         Endif
  65.         Select Case (STRING005)
  66.             Case "1", "2"
  67.                 BOOLEAN001 = 1
  68.                 If (STRING005 == "1") Then
  69.                     Gosub LABEL005
  70.                     Gosub LABEL007
  71.                 Endif
  72.             Case "2"
  73.                 Gosub LABEL006
  74.                 Gosub LABEL008
  75.         End Select
  76.     EndWhile
  77.     AnsiPos INTEGER007, INTEGER008
  78.     ClrEol
  79.     Print STRING003 + "PCB Lotto Terminating now returning to the BBS "
  80.     Delay 50
  81.     AnsiPos INTEGER007, INTEGER008
  82.     ClrEol
  83.     End
  84.     :LABEL004
  85.     PrintLn "@CLS@@X07"
  86.     PrintLn "@X0F    ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄@X07▄@X07"
  87.     PrintLn "@X07    @X0F█@X7F  ┌────────@X70┐  @X78  @X74─────────────────────────────────────    @X7F┌────────@X70┐@X78  @X08█@X07"
  88.     PrintLn "@X08    @X0F█@X7F  │ @X74Lotto @X70 │@X7F @X70 @X78            @X71P C B  L O T T O@X78         @X71      @X7F│  @X74Menu  @X70│@X78  @X08█@X07"
  89.     PrintLn "@X08    @X0F█@X7F  └@X70────────┘  @X78  @X74─────────────────────────────────────    @X7F└@X70────────┘@X78  @X08█@X07"
  90.     PrintLn "@X08    @X7F█  ┌───────────────────────────────────────────────────────────────@X70┐  @X78█@X07"
  91.     PrintLn "@X0F    @X7F█  │  @X741 @X7B- @X71Pick 6            @X70 @X71   @X742@X70 @X7B-@X70 @X71Pick 3               @X74Q @X7B- @X71Quit  @X70│  @X08█@X07"
  92.     PrintLn "@X0F    █@X7F  └@X70───────────────────────────────────────────────────────────────┘  @X78█@X07"
  93.     PrintLn "@X0F    @X7F█                                              @X74                    @X7F   @X78█@X07"
  94.     PrintLn "@X0F    @X07▀@X08▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀@X07"
  95.     PrintLn "@X07                                                    @X08Programmed By Phil Cook@X07"
  96.     PrintLn "@X07"
  97.     PrintLn "@X07"
  98.     INTEGER007 = GetX()
  99.     INTEGER008 = GetY()
  100.     Return
  101.     :LABEL005
  102.     PrintLn "@CLS@@X07"
  103.     PrintLn "@X0F    ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄@X07▄@X07"
  104.     PrintLn "@X07    @X0F█@X7F  ┌────────@X70┐  @X78  @X74─────────────────────────────────────    @X7F┌────────@X78┐  @X08█@X07"
  105.     PrintLn "@X08    @X0F█@X7F  │ @X74Lotto  @X70│ @X78      @X74       @X71P C B  L O T T O@X74        @X71       @X7F│  @X74Menu  @X78│  @X08█@X07"
  106.     PrintLn "@X08    @X0F█@X7F  └@X78────────@X70┘ @X78   @X74─────────────────────────────────────    @X7F└@X78────────┘  @X08█@X07"
  107.     PrintLn "@X08    @X7F█  ┌───────────────────────────────────────────────────────────────@X70┐  @X78█@X07"
  108.     PrintLn "@X0F    @X7F█  │  @X72      @X02  @X71       @X02  @X71       @X02  @X71       @X02  @X71       @X02  @X71       @X02  @X71        @X70│  @X08█@X07"
  109.     PrintLn "@X0F    █@X7F  └@X70───────────────────────────────────────────────────────────────┘  @X78█@X07"
  110.     PrintLn "@X0F    @X7F█                                                                     @X78█@X07"
  111.     PrintLn "@X0F    @X07▀@X08▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀@X07"
  112.     PrintLn "@X07                                                    @X08Programmed By Phil Cook@X07"
  113.     PrintLn "@X07"
  114.     PrintLn "@X07"
  115.     INTEGER007 = GetX()
  116.     INTEGER008 = GetY()
  117.     Return
  118.     :LABEL006
  119.     PrintLn "@CLS@@X07"
  120.     PrintLn "@X0F    ▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄▄@X07▄@X07"
  121.     PrintLn "@X07    @X0F█@X7F  ┌────────@X70┐ @X78   @X74─────────────────────────────────────    @X7F┌────────@X78┐  @X08█@X07"
  122.     PrintLn "@X08    @X0F█@X7F  │ @X74Lotto  @X70│ @X78      @X70       @X71P C B  L O T T O@X70         @X71      @X7F│  @X74Menu  @X78│  @X08█@X07"
  123.     PrintLn "@X08    @X0F█@X7F  └@X78────────@X70┘ @X78   @X74─────────────────────────────────────    @X7F└@X78────────┘  @X08█@X07"
  124.     PrintLn "@X08    @X7F█  ┌───────────────────────────────────────────────────────────────@X70┐  @X78█@X07"
  125.     PrintLn "@X0F    @X7F█  │  @X72      @X02  @X71       @X7F  @X71      @X7F   @X71 @X7F @X0F  @X71   @X7F  @X71       @X7F  @X71       @X02  @X71        @X70│  @X08█@X07"
  126.     PrintLn "@X0F    █@X7F  └@X70───────────────────────────────────────────────────────────────┘  @X78█@X07"
  127.     PrintLn "@X0F    @X7F█                                                                     @X78█@X07"
  128.     PrintLn "@X0F    @X07▀@X08▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀▀@X07"
  129.     PrintLn "@X07                                               @X08     Programmed By Phil Cook@X07"
  130.     PrintLn "@X07"
  131.     PrintLn "@X07"
  132.     INTEGER007 = GetX()
  133.     INTEGER008 = GetY()
  134.     Return
  135.     :LABEL007
  136.     For INTEGER005 = 0 To 5
  137.         TINTEGER001(INTEGER005) = Random(50)
  138.         If ((TINTEGER001(INTEGER005) == 0) || (TINTEGER001(INTEGER005) > 50)) Then
  139.             While (TINTEGER001(INTEGER005) == 0) Do
  140.                 TINTEGER001(INTEGER005) = Random(50)
  141.             EndWhile
  142.             While (TINTEGER001(INTEGER005) > 50) Do
  143.                 TINTEGER001(INTEGER005) = Random(50)
  144.             EndWhile
  145.         Endif
  146.         TINTEGER002(INTEGER005) = TINTEGER001(INTEGER005)
  147.     Next
  148.     For INTEGER005 = 0 To 5
  149.         For INTEGER006 = 0 To 5
  150.             If (INTEGER005 == INTEGER006) Then
  151.                 Continue
  152.                 Continue
  153.             Endif
  154.             If (TINTEGER001(INTEGER005) == TINTEGER002(INTEGER006)) Then
  155.                 While (TINTEGER001(INTEGER005) == TINTEGER002(INTEGER006)) Do
  156.                     TINTEGER001(INTEGER005) = Random(50)
  157.                     If (TINTEGER001(INTEGER005) > 50) Then
  158.                         While (TINTEGER001(INTEGER005) > 50) Do
  159.                             TINTEGER001(INTEGER005) = Random(50)
  160.                         EndWhile
  161.                     Endif
  162.                 EndWhile
  163.             Endif
  164.         Next
  165.     Next
  166.     For INTEGER005 = 0 To 5
  167.         TSTRING001(INTEGER005) = String(TINTEGER001(INTEGER005))
  168.     Next
  169.     For INTEGER005 = 1 To 50
  170.         AnsiPos 17, 7
  171.         If (INTEGER005 > 9) Then
  172.             Print STRING003, INTEGER005
  173.         Else
  174.             Print STRING003, "0", INTEGER005
  175.         Endif
  176.         AnsiPos 17, 7
  177.         Print "  "
  178.     Next
  179.     AnsiPos 17, 7
  180.     If (TINTEGER001(0) < 9) Then
  181.         Print STRING004, "0", TSTRING001(0)
  182.     Else
  183.         Print STRING004, TSTRING001(0)
  184.     Endif
  185.     For INTEGER005 = 1 To 50
  186.         AnsiPos 26, 7
  187.         If (INTEGER005 > 9) Then
  188.             Print STRING003, INTEGER005
  189.         Else
  190.             Print STRING003, "0", INTEGER005
  191.         Endif
  192.         AnsiPos 26, 7
  193.         Print "  "
  194.     Next
  195.     AnsiPos 26, 7
  196.     If (TINTEGER001(1) < 9) Then
  197.         Print STRING004, "0", TSTRING001(1)
  198.     Else
  199.         Print STRING004, TSTRING001(1)
  200.     Endif
  201.     For INTEGER005 = 1 To 50
  202.         AnsiPos 35, 7
  203.         If (INTEGER005 > 9) Then
  204.             Print STRING003, INTEGER005
  205.         Else
  206.             Print STRING003, "0", INTEGER005
  207.         Endif
  208.         AnsiPos 35, 7
  209.         Print "  "
  210.     Next
  211.     AnsiPos 35, 7
  212.     If (TINTEGER001(2) < 9) Then
  213.         Print STRING004, "0", TSTRING001(2)
  214.     Else
  215.         Print STRING004, TSTRING001(2)
  216.     Endif
  217.     For INTEGER005 = 1 To 50
  218.         AnsiPos 44, 7
  219.         If (INTEGER005 > 9) Then
  220.             Print STRING003, INTEGER005
  221.         Else
  222.             Print STRING003, "0", INTEGER005
  223.         Endif
  224.         AnsiPos 44, 7
  225.         Print "  "
  226.     Next
  227.     AnsiPos 44, 7
  228.     If (TINTEGER001(3) < 9) Then
  229.         Print STRING004, "0", TSTRING001(3)
  230.     Else
  231.         Print STRING004, TSTRING001(3)
  232.     Endif
  233.     For INTEGER005 = 1 To 50
  234.         AnsiPos 53, 7
  235.         If (INTEGER005 > 9) Then
  236.             Print STRING003, INTEGER005
  237.         Else
  238.             Print STRING003, "0", INTEGER005
  239.         Endif
  240.         AnsiPos 53, 7
  241.         Print "  "
  242.     Next
  243.     AnsiPos 53, 7
  244.     If (TINTEGER001(4) < 9) Then
  245.         Print STRING004 + "0" + TSTRING001(4)
  246.     Else
  247.         Print STRING004 + TSTRING001(4)
  248.     Endif
  249.     For INTEGER005 = 1 To 50
  250.         AnsiPos 62, 7
  251.         If (INTEGER005 > 9) Then
  252.             Print STRING003, INTEGER005
  253.         Else
  254.             Print STRING003, "0", INTEGER005
  255.         Endif
  256.         AnsiPos 62, 7
  257.         Print "  "
  258.     Next
  259.     AnsiPos 62, 7
  260.     If (TINTEGER001(5) < 9) Then
  261.         Print STRING004, "0", TSTRING001(5)
  262.     Else
  263.         Print STRING004, TSTRING001(5)
  264.     Endif
  265.     AnsiPos INTEGER007, INTEGER008
  266.     ClrEol
  267.     Wait
  268.     Gosub LABEL004
  269.     Return
  270.     :LABEL008
  271.     For INTEGER005 = 0 To 2
  272.         TINTEGER003(INTEGER005) = Random(9)
  273.         If (TINTEGER003(INTEGER005) > 9) Then
  274.             While (TINTEGER003(INTEGER005) > 9) Do
  275.                 TINTEGER003(INTEGER005) = Random(9)
  276.             EndWhile
  277.         Endif
  278.         TINTEGER004(INTEGER005) = TINTEGER003(INTEGER005)
  279.     Next
  280.     For INTEGER005 = 0 To 2
  281.         TSTRING002(INTEGER005) = String(TINTEGER003(INTEGER005))
  282.     Next
  283.     For INTEGER005 = 0 To 9
  284.         AnsiPos 17, 7
  285.         Print "  "
  286.         AnsiPos 18, 7
  287.         Print STRING003, INTEGER005
  288.     Next
  289.     AnsiPos 17, 7
  290.     Print "  "
  291.     AnsiPos 18, 7
  292.     Print STRING004, TSTRING002(0)
  293.     For INTEGER005 = 0 To 9
  294.         AnsiPos 39, 7
  295.         Print "  "
  296.         AnsiPos 40, 7
  297.         Print STRING003, INTEGER005
  298.     Next
  299.     AnsiPos 39, 7
  300.     Print "  "
  301.     AnsiPos 40, 7
  302.     Print STRING004, TSTRING002(1)
  303.     For INTEGER005 = 0 To 9
  304.         AnsiPos 62, 7
  305.         Print "  "
  306.         AnsiPos 63, 7
  307.         Print STRING003, INTEGER005
  308.     Next
  309.     AnsiPos 62, 7
  310.     Print "  "
  311.     AnsiPos 63, 7
  312.     Print STRING004, TSTRING002(2)
  313.     AnsiPos INTEGER007, INTEGER008
  314.     ClrEol
  315.     Wait
  316.     Gosub LABEL004
  317.     Return
  318.  
  319. ;------------------------------------------------------------------------------
  320. ;
  321. ; Usage report (before postprocessing)
  322. ;
  323. ; ■ Statements used :
  324. ;
  325. ;    1       End
  326. ;    4       ClrEol
  327. ;    2       Wait
  328. ;    82      Goto 
  329. ;    57      Let 
  330. ;    45      Print 
  331. ;    39      PrintLn 
  332. ;    45      If 
  333. ;    7       Gosub 
  334. ;    5       Return
  335. ;    1       Delay 
  336. ;    37      AnsiPos 
  337. ;
  338. ;
  339. ; ■ Functions used :
  340. ;
  341. ;    21      +
  342. ;    11      ==
  343. ;    8       <>
  344. ;    21      <
  345. ;    15      <=
  346. ;    12      >
  347. ;    30      >=
  348. ;    45      !
  349. ;    30      &&
  350. ;    24      ||
  351. ;    7       Random()
  352. ;    1       Inkey()
  353. ;    2       String()
  354. ;    3       GetX()
  355. ;    3       GetY()
  356. ;
  357. ;------------------------------------------------------------------------------
  358. ;
  359. ; Analysis flags : No flag
  360. ;
  361. ;------------------------------------------------------------------------------
  362. ;
  363. ; Postprocessing report
  364. ;
  365. ;    15      For/Next
  366. ;    6       While/EndWhile
  367. ;    21      If/Then or If/Then/Else
  368. ;    1       Select Case
  369. ;
  370. ;------------------------------------------------------------------------------
  371. ;                 AEGiS Corp - Break the routines, code against the machines!
  372. ;------------------------------------------------------------------------------
  373.